草庐IT

c++ - WaitForSingleObject 问题

全部标签

c - 临时冒充和启用特权?

我们维护一个DLL,做很多与系统相关的事情;遍历文件系统、注册表等。此DLL的调用者可能使用也可能不使用模拟。为了更好地支持所有可能的场景,我正在尝试将其修改为更智能。我将使用删除文件的示例。目前我们只调用DeleteFile(),如果失败,那就结束了。我想出了以下内容:BOOLTryReallyHardToDeleteFile(LPCTSTRlpFileName){//1.callerwithoutprivilegeBOOLbSuccess=DeleteFile(lpFileName);DWORDdwError=GetLastError();if(!bSuccess&&dwError

c - 使用 ANSI C 在 Windows 平台上传输 FTP 文件?

我在另一台WindowsPC上有一个已知的共享文件夹,我必须使用我的ANSIC程序将文件传输到使用FTP连接的共享文件夹。我需要一些指导-请指导我。 最佳答案 ANSIC标准不包含任何网络库。如果你可以使用第三方库,那么你需要一些东西libcurl或其他一些C网络库或使用Winsock从头开始​​创建FTP客户端. 关于c-使用ANSIC在Windows平台上传输FTP文件?,我们在StackOverflow上找到一个类似的问题: https://stacko

windows - 奇怪的 send() 问题(使用 Wireshark 日志)

关于这个问题我还有一个问题,但是我没有问对,所以我又来了!我通过分块发送文件。现在,我正在研究该block大小的不同数字,看看哪种大小最有效。在本地主机上测试时,任何block大小似乎都可以正常工作。但是当我通过网络测试它时,最大块大小似乎是8191字节。如果我尝试任何更高的东西,转移就会变得非常、痛苦、缓慢。为了显示发生了什么,这里是前100行Wireshark日志,当我使用8191字节的block大小时,以及当我使用8192字节的block大小时:(发送方是192.168.0.102,接收方是192.168.0.100)8191:http://pastebin.com/E7jFFY

c++ - 将 kde 应用程序移植到 windows

你好我正在尝试将KDE应用程序移植到Windows我的问题是为Windows找到一个合适的KDESDK,我不能包含任何k-headers(kapplication.hkaction.h....)而且我什至没有得到libs有这样的指南吗 最佳答案 KDE4旨在原生支持Windows,因此它应该少一些“移植”工作,多一些“让它按原样编译”的工作(尽管可能会有一些小的变化)。你应该可以在KDEonWindowssite上找到相关信息。.具体来说,有一个porting在他们的wiki中确保KDE应用程序在Windows下运行的部分。

c# - 在 C# 中从串口接收数据有问题吗?

你好,我在C#中从串行端口接收数据时遇到问题,我在数据缓冲区的末尾插入了一个换行符。然后我在串行端口上发送这个数据缓冲区,之后我的c#GUI接收器将通过Readline()函数获取这个数据,但它总是给我原始数据而不是实际数据如何解决这个问题。//configuringtheserialportthiscodeinc#withproblemserialPort.PortName="COM1";serialPort.BaudRate=9600;serialPort.DataBits=8;serialPort.Parity=Parity.None;serialPort.StopBits=St

windows - 在最终用户系统上调试 "application configuration is incorrect"问题的好方法?

我构建了一个动态链接到多个DLL的可执行文件。其中大部分默认安装在Windows上,但版本可能略有不同。其他的我随应用程序分发,但它们可能又依赖于其他DLL。如果我在本地运行可执行文件并收到Windows错误消息“无法加载[whatever]。应用程序配置不正确”,这似乎意味着缺少“whatever”所依赖的库。但它(相当令人恼火)忽略了准确指定它在加载时遇到问题的DLL。有时我可以使用DependencyWalker来解决这个问题查看是否有明显缺失的库。其他时候,我可以诉诸ProcessMonitor这可以告诉我Windows在发出错误消息之前正在寻找哪个文件。但是,当最终用户尝试诊

c - 如何最好地处理 Windows 的 16 位 wchar_t 丑陋?

我正在编写一个与mingw一起使用的包装层,它为应用程序提供了一个虚拟的UTF-8环境。处理文件名的函数是从UTF-8转换并调用相应的“_w”函数等的包装器。我遇到的最大问题是Windows的wchar_t是16位的。对于文件系统操作,这没什么大不了的。我可以在UTF-8和UTF-16之间来回转换,一切正常。但是标准的C多字节/宽字符转换API不允许多wchar_t字符。可能的解决方案:提供CESU-8环境而不是UTF-8。我真的不喜欢这个。走捷径,只支持BMP。将长度为4的UTF-8序列视为无效。扩展包装器以将mingw的wchar_t替换为typedefint32_twchar_t

c++ - 打印机驱动程序开发 - 从 32 位到 64 位

我开发了一个为32位系统编译的驱动程序。该驱动程序基于unidriver。有谁知道要使驱动程序与64位兼容需要什么?如果有的话,我需要对代码做哪些更改?还是只需要用64位版本的DDK编译它?提前致谢。努诺 最佳答案 第一步是使用VisualStudio打开项目并添加x64配置。然后,测试并查看它是否构建(可能不会)。最常见的错误(我遇到过)是这些:DWORD->DWORD_PTR+所有相关的具有长版本的Win32api函数指针截断:将在msvc上发出警告,在gcc上发出错误:在适用的情况下将long/int替换为(u)intptr_

c++ - 如何使用 visual studio express 调试到汇编级别?

我很好奇某些功能是如何在幕后实现的,例如:pEvent->WaitForCompletion(INFINITE,&evCode);我试图进入它但失败了。有办法吗? 最佳答案 您没有说是哪个实际版本的VisualStudio,但我相信所有版本都包含设置反汇编您没有源代码的native代码的能力。但是,默认的调试器选项通常设置为禁用这种显示。检查工具->选项中的调试选项并启用“如果源不可用则显示反汇编”,禁用“仅我的代码”和其他类似选项。一个警告:WaitForCompletion的核心实现很可能是在内核模式代码中(特别是如果pEven

c# - 我正在为 cmd 编写包装器,但在重定向标准输入时遇到问题

好的,这就是我正在做的事情——我想编写一个将标准输出/输入重定向到富文本框的.net应用程序。我已经让它工作得很好,但是一旦我将标准输入添加到混合中,我的读取命令就会卡住。这是我表单中的相关代码。Shell=newProcess();Shell.StartInfo.FileName="cmd";Shell.StartInfo.UseShellExecute=false;Shell.StartInfo.WindowStyle=ProcessWindowStyle.Hidden;Shell.StartInfo.CreateNoWindow=true;//Shell.StartInfo.Re